<template>
    <div ref="chartContainer" style="width: 100%; height: 400px; margin: 20px"></div>
</template>

<script lang="ts" setup>
import { ref, onMounted } from 'vue';
import * as echarts from 'echarts';

// 引用图表容器
const chartContainer = ref<HTMLElement | null>(null);

// 初始化 ECharts 图表
const initChart = () => {
    if (chartContainer.value) {
        const myChart = echarts.init(chartContainer.value);
        const option: echarts.EChartsOption = {
            title: {
                text: '线索分析'
            },
            tooltip: {
                trigger: 'axis'
            },
            legend: {
                data: ['增量数据', '存量数据', 'Video Ads', 'Direct', 'Search Engine']
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            toolbox: {
                feature: {
                    saveAsImage: {}
                }
            },
            xAxis: {
                type: 'category',
                boundaryGap: false,
                data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                    name: '增量数据',
                    type: 'line',
                    stack: 'Total',
                    data: [120, 132, 101, 134, 90, 230, 210]
                },
                {
                    name: '存量数据',
                    type: 'line',
                    stack: 'Total',
                    data: [220, 182, 191, 234, 290, 330, 310]
                },
                {
                    name: 'Video Ads',
                    type: 'line',
                    stack: 'Total',
                    data: [150, 232, 201, 154, 190, 330, 410]
                },
                {
                    name: 'Direct',
                    type: 'line',
                    stack: 'Total',
                    data: [320, 332, 301, 334, 390, 330, 320]
                },
                {
                    name: 'Search Engine',
                    type: 'line',
                    stack: 'Total',
                    data: [820, 932, 901, 934, 1290, 1330, 1320]
                }
            ]
        };

        myChart.setOption(option);
    }
};

// 在组件挂载后初始化图表
onMounted(() => {
    initChart();
});
</script>

<style scoped>
/* 你可以在这里添加一些样式 */
</style>